package com.zqwm.fly.mapper;

import java.util.List;
import java.util.Map;

public interface BaseMapper<T>
{
    /**
     * 添加
     * @param entity
     * @return
     */
    public int insert(T entity);

    /**
     * 修改
     * @param entity
     * @return
     */
    public int update(T entity);

    /**
     * 删除
     * @param
     * @return
     */
    public int delete(Integer id);

    /**
     * 批量删除
     * @param ids
     */
    public int deleteByIds(String... ids);

    /**
     * 动态参数获取查询列表
     * @param entity
     * @return
     */
    public List<T> selectByParams(T entity);

    /**
     * 动态参数获取查询列表
     * @param map
     * @return
     */
    public List<T> selectByMap(Map<String, Object> map);

    /**
     * 分页加动态参数查询
     * @param entity
     * @param page
     * @param rows
     * @return
     */
    public List<T> selectByParamsPage(T entity, Integer page, Integer rows);
}
